1. Technical Field
The present invention is directed generally toward the data processing field and, more particularly, to an intelligent transportable data storage component module for a data processing system and to a method for charging a battery for a data storage component in an intelligent transportable data storage component module.
2. Description of the Related Art
It is known to provide data storage components in a data processing system with a battery backup in order to protect against loss or corruption of data as a result of a power failure. For example, a battery backup has been provided for a cache memory in a computer system to provide emergency power to the cache memory if power to the computer system fails or is otherwise interrupted. Battery backup has also been provided for a RAID (Redundant Array of Independent Disks) storage adapter to protect the adapter in case of power failure.
It is also known to include both a data storage component to be protected and a battery backup for the data storage component in a module in order to provide the data storage component with portability, for example, to enable the component to be transferred from one computer system to another, without losing data. A transportable data storage component together with a battery backup for the transportable data storage component is referred to as a Transportable Battery Backup or TBBU.
FIG. 3 is a block diagram that illustrates a computer system having a transportable memory module that is known in the art to assist in explaining the present invention. In particular, FIG. 3 illustrates a computer system that is disclosed in commonly assigned U.S. Pat. No. 6,557,077, the disclosure of which is incorporated herein by reference. The computer system is generally designated by reference number 300, and includes a transportable memory module 302 that includes a cache memory 340. Computer system 300 operates to provide cache memory power source switching functions and memory reconfiguration functions during the activation or powering up of the computer system. For example, auxiliary power may be provided to cache memory 340 in the event that system power supply 315 fails, thereby preserving the integrity of data stored by cache memory 340. If the power failure results from a disruption in the system power supply, the stored data may be downloaded to memory storage device 312, such as one or more disk drives, during the next activation or power up sequence of the computer system after the power disruption has been remedied. Alternatively, if the power failure resulted from a failure within the computer system itself, such as a hardware failure, transportable memory module 302, including cache memory 340, may be transported to another computer system and connected to the other computer system.
Transportable memory module 302 is connected to and in communication with host computer system 300. Host computer system 300 includes central processing unit (CPU) 341; and may also include internal or external memory storage device 312, non-volatile memory 316, power supply 315 and system bus 313 that connects CPU 341 to memory storage device 312.
Transportable memory module 302 is typically connected to host computer system 300 via an adapter slot, another type of expansion slot, or in another manner. As indicated above, however, transportable memory module 302 is transportable, and may be removed from host computer system 300 and installed in another computer system. When connected to host computer system 300, transportable memory module 302 can communicate with CPU 341 via memory bus 321 and control bus 322.
Transportable memory module 302 includes cache memory 340, power source selector 320, voltage comparator 319 and battery 323. These elements may be separate modules, as illustrated in FIG. 3. Power source selector 320 comprises discrete logic that receives information on the state of system power supply 315 and switches cache memory 340 between system power and auxiliary power provided by battery 323 when the system power supply fails.
Voltage comparator 319 comprises discrete logic that senses both the system power level and battery power level and provides power source selector 320 with comparison data.
In order to charge battery 323 on transportable memory module 302, a battery charging mechanism is required. FIG. 4 is a block diagram that illustrates the computer system of FIG. 3 incorporating a battery charger for charging the battery on the transportable memory module in FIG. 3. The computer system is generally designated by reference number 400, and is similar to computer system 300 in FIG. 3, and corresponding components are identified by corresponding reference numbers.
As shown in FIG. 4, computer system 400 includes battery charger 460 that is connected to battery 423 on transportable memory module 402 and to system power supply 415. As is apparent from FIG. 4, battery charger 460 is separate from transportable memory module 402, and can be used to charge battery 423 only when transportable memory module 402 is connected to host computer 400.
Battery backup applications are typically custom applications designed for a specific battery having a particular number of battery cells and a particular type of battery chemistry. As a result, battery charger 460 must be designed around the number of cells and the battery chemistry of a battery 423. The specific battery design in a TBBU system, accordingly, sets limits on a customer's options with respect to the TBBU system. Among such limitations include:                Battery chemistry dependency. Some battery backup systems are designed around Lithium Ion batteries while other systems utilize NiMH batteries. There is not a one size/one solution/one interface that is able to meet the needs of all customers.        Number of cells within a battery and battery voltage range. Comparator set points must be set so that the data processing system firmware can determine when to charge the battery and when to stop charging the battery. The comparator set points reflect a relative state of charge based upon a related open circuit battery voltage. No specific state of health information is given in relation to the actual capacity of the battery other than a relative voltage of the battery with respect to comparators. If the number of cells in a battery is changed, or if the capacity or chemistry is changed, it is typically necessary to rewrite the firmware to account for the changes in the battery.        Form Factor and Real Estate Constrained.        Common software interface to RAID firmware. In a RAID system, all specific versions of firmware have to gather and interpret the health of the battery from various sources within the RAID adapter.        Must be configured as a factory built option, and typically does not provide an option to be sold as an in-the-field upgrade without substantial overhead costs.        
There is, accordingly, a need for an intelligent transportable data storage component module for a data processing system that includes a data storage component and a battery backup for the data storage component that permits a battery of the battery backup to be monitored and charged independent of characteristics of the battery and independent of the host processor and firmware of the data processing system.